Scroll to navigation

PMPROBE(1) General Commands Manual PMPROBE(1)

NAME

pmprobe - lightweight probe for performance metrics

SYNOPSIS

pmprobe [-fFIiLVvz] [-a archive] [-b batchsize] [-h hostname] [-K spec] [-n pmnsfile] [-O time] [-Z timezone] [metricname ...]

DESCRIPTION

pmprobe determines the availability of performance metrics exported through the facilities of the Performance Co-Pilot (PCP).

The metrics of interest are named in the metricname arguments. If metricname is a non-leaf node in the Performance Metrics Name Space (pmns(5)), then pmprobe will recursively descend the PMNS and report on all leaf nodes. If no metricname argument is given, the root of the namespace is used.

This recursive expansion of the PMNS can be inhibited by the -F (go faster) option, which reduces the number of roundtrips to pmcd(1) when the metricname arguments are known to be leaf nodes ahead of time.

The output format is spartan and intended for use in wrapper scripts creating configuration files for other PCP tools. By default, there is one line of output per metric, with the metric name followed by a count of the number of available values. Error conditions are encoded as a negative value count (as per the PMAPI(3) protocols, but may be decoded using pmerr(1)) and followed by a textual description of the error.

Unless directed to another host by the -h option, pmprobe will contact the Performance Metrics Collector Daemon (PMCD) on the local host.

The -a option causes pmprobe to use the specified set of archives rather than connecting to a PMCD. The argument is a comma-separated list of names, each of which may be the base name of an archive or the name of a directory containing one or more archives. The -a and -h options are mutually exclusive.

The -b/--batch option may be used to define the maximum size of the group of metrics to be fetched in a single request for the -v/--values option. This batching is also applied to the pmLookupName(3) request that pmprobe calls with the list of leaf metric names, to avoid exceeding the maximum PDU length supported by pmcd(1) for client requests. This can be important for pmlogconf(1), which uses pmprobe to enumerate the set of metrics to be logged by pmlogger(1). The default value for batchsize is 128. This option is useful to avoid limitations on PDU request sizes and also to stagger fetches, which may otherwise timeout if pmcd(1) or a PMDA is slow to respond, particularly if a large number of metrics are probed.

The -L option causes pmprobe to use a local context to collect metrics from PMDAs on the local host without PMCD. Only some metrics are available in this mode. The -a, -h and -L options are mutually exclusive.

Normally pmprobe operates on the distributed Performance Metrics Name Space (PMNS), however, if the -n option is specified an alternative local PMNS file is loaded from the file pmnsfile.

Other options control the output of additional information when one or more values is available.

When used with -i or -I the set of instances reported will be all of those known at the source of the performance data. By default the set of reported instances are those for which values are currently available, which may be smaller than the set reported with -f.
Report the external identifiers for each instance. The literal string PM_IN_NULL is reported for singular metrics.
Report the internal identifiers for each instance. The values are in decimal and prefixed by ``?''. As a special case, the literal string PM_IN_NULL is reported for singular metrics.
When using the -L option to fetch metrics from a local context, the -K option may be used to control the DSO PMDAs that should be made accessible. The spec argument conforms to the syntax described in pmSpecLocalPMDA(3). More than one -K option may be used.
When used in conjunction with an archive source of metrics and the -v option the time argument defines a time origin at which the metrics should be fetched from the archive(s). Refer to PCPIntro(1) for a complete description of this option, and the syntax for the time argument.
Report the value for each instance, as per the formatting rules of pmPrintValue(3). When fetching from a set of archives, only those instances present in the first archive record for a metric will be displayed; see also the -O option.

The -v option is mutually exclusive with either the -I or -i options.

The -V option provides a cryptic summary of the number of messages sent and received across the PMAPI interface.

EXAMPLES

$ pmprobe disk.dev
disk.dev.read 2
disk.dev.write 2
disk.dev.total 2
disk.dev.blkread 2
disk.dev.blkwrite 2
disk.dev.blktotal 2
disk.dev.active 2
disk.dev.response 2

$ pmprobe -I disk.dev.read disk.dev.write disk.all.total
disk.dev.read 2 "dks0d1" "dks0d2"
disk.dev.write 2 "dks0d1" "dks0d2"
disk.all.total 1 PM_IN_NULL

$ pmprobe -v pmcd.numagents pmcd.version pmcd.control.timeout
pmcd.numagents 1 9
pmcd.version 1 "2.0 beta-1"
pmcd.control.timeout 1 5

$ pmprobe -v disk.dev.total disk.all.total
disk.dev.total -1012 Unknown metric name
disk.all.total 1 4992466

FILES

$PCP_VAR_DIR/pmns/*
default PMNS specification files

PCP ENVIRONMENT

Environment variables with the prefix PCP_ are used to parameterize the file and directory names used by PCP. On each installation, the file /etc/pcp.conf contains the local values for these variables. The $PCP_CONF variable may be used to specify an alternative configuration file, as described in pcp.conf(5).

SEE ALSO

PCPIntro(1), pmcd(1), pmdumplog(1), pminfo(1), PMAPI(3), pmErrStr(3), pmSpecLocalPMDA(3), pcp.conf(5), pcp.env(5) and pmns(5).

PCP Performance Co-Pilot